package appcontroltareas;

public class Notificacion {
	private String modulo;
	private String numero;
	private Usuario usuario;	
	
	public Notificacion(String modulo, String numero, Usuario usuario) {
		this.modulo = modulo;
		this.numero = numero;
		this.usuario = usuario;
	}
	
	public String getModulo() {
		return modulo;
	}
	public void setModulo(String modulo) {
		this.modulo = modulo;
	}
	public String getNumero() {
		return numero;
	}
	public void setNumero(String numero) {
		this.numero = numero;
	}
	public Usuario getUsuario() {
		return usuario;
	}
	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	public Tarea getTarea(){
		Tarea tarea = null;
		if(this.modulo == DeclaracionJurada.MODULO){						
			AdmDeclaracionJurada admDeclaracionJurada = new AdmDeclaracionJurada();
			tarea = admDeclaracionJurada.buscarDeclaracionJurada(this.numero);	
		}	
		
		if(this.modulo == CartaFianza.MODULO){						
			AdmCartaFianza admCartaFianza = new AdmCartaFianza();
			tarea = admCartaFianza.buscarCartaFianza(this.numero);	
		}			
		
		if(this.modulo == TareaGeneral.MODULO){						
			AdmTareaGeneral admTareaGeneral = new AdmTareaGeneral();
			tarea = admTareaGeneral.buscarTareaGeneral(this.numero);	
		}			
		
		return tarea;	
	}	
	
	public void cambiarEstadoTarea(String estado){
		Tarea tarea = getTarea();
		tarea.setEstado(estado);
	}
	
	public String getcuerpoMensaje(){
		Tarea tarea = getTarea();
		String mensaje = "Recordatorio" +
				this.modulo + "2012" +
				"Vencimiento: " + tarea.getFechaVencimiento() +
				"Responsable: " + tarea.getResponsable().getNombre() + " " + tarea.getResponsable().getApellidoPaterno();
		
		if(usuario.getDni() == tarea.getResponsable().getDni()){
			mensaje = mensaje + "Estado: " + tarea.getEstado();
		}
		
		return mensaje;
				
	}
	
	public boolean validarUsuarioResponsable(){
		Tarea tarea = getTarea();
		
		if(usuario.getDni() == tarea.getResponsable().getDni())
			return true;
		return false;
	}

}
